package com.ming.service;

import com.github.pagehelper.PageInfo;
import com.ming.pojo.entity.Emp;
import com.ming.pojo.entity.EmpExpr;
import com.ming.pojo.vo.EmpListVO;
import com.ming.pojo.dto.EmpQueryDTO;
import com.ming.pojo.vo.EmpVO;
import com.ming.pojo.dto.LoginDTO;
import com.ming.pojo.vo.LoginVO;

import java.util.List;

public interface EmpService {

    List<Emp> list();

    PageInfo<EmpListVO> pageQuery(EmpQueryDTO empQueryDTO);

    EmpVO getById(Integer id);

    void add(Emp emp, List<EmpExpr> exprList);

    void update(Emp emp, List<EmpExpr> exprList);

    void deleteById(Integer id);

    void addExpr(EmpExpr empExpr);

    void updateExpr(EmpExpr empExpr);

    void deleteExprById(Integer id);

    List<EmpExpr> getExprByEmpId(Integer empId);

    /**
     * 员工登录
     *
     * @param loginDTO 登录信息
     * @return 登录结果（包含 token）
     */
    LoginVO login(LoginDTO loginDTO);
}